{{tag>sgbd mysql serveur réseau }}

----

====== MariaDB ======

**[[wpfr>MariaDB]]** est un système de gestion de base de données relationnelles. Après le rachat de [[wpfr>MySQL]] par Sun Microsystems, puis de Sun par Oracle Corporation, son fondateur (Michael Widenius) démissionne pour lancer une version alternative, sous licence GPL et 100% compatible avec [[:MySQL]].
MariaDB se base sur le code source de MySQL 5.1.

--- //Source: [[http://fr.wikipedia.org/wiki/MariaDB|Wikipédia]]//

Il s'agit donc d'un fork plus communautaire et ouvert, et 100% compatible MySQL. Il s'avère aussi plus performant selon certaines études. Il est utilisé comme serveur MySQL par défaut sur [[wpfr>Debian]]. Sur Ubuntu cependant, c'est toujours [[:MySQL]] qui est proposé par défaut.

===== Installation =====

MariaDB est disponible dans les dépôts officiels.

Pour installer le serveur MariaDB : [[apt>mariadb-server]] ou
<code bash>
sudo apt install mariadb-server
</code>
Pour installer le client MariaDB : [[apt>mariadb-client]] ou
<code bash>
sudo apt install mariadb-client
</code>

===== PHP =====

Pour que [[:PHP]] dialogue avec le serveur MariaDB, il ne faut pas oublier d'installer le [[:php#association_avec_un_serveur_de_base_de_donnees|module correspondant]] : [[apt>php-mysql]].

===== Définir/Redéfinir le mot de passe root et les différentes sécurités =====

Lors de la première installation vous devrez définir le mot de passe root :
<code bash>sudo mysql_secure_installation</code>

Permet aussi de limiter l'accès root uniquement en local… si vous rencontrez l'erreur \\
//ERROR 1698 (28000): Access denied for user 'root'@'localhost'// \\
pensez bien à être en sudo
<code bash>sudo mysql -u root</code>
Pour [[:phpMyAdmin]], il faut utiliser le compte éponyme… //phpmyadmin// avec le mot de passe définit lors de l'installation (de phpmyadmin).

Si vous avez oublié votre mot de passe root :\\
//ERROR 1045 (28000): Access denied for user 'root'@'localhost'// \\
les solutions classiques à [[:MySQL]] ne résolvent pas le problème. Il faut relancer 
<code bash>sudo mysql_secure_installation
…
Change the root password? [Y/n] 
New password: 
</code>
Si vous souhaitez accéder à votre serveur sur un réseau il vous faudra répondre à la question qui vous proposera de desactiver les connexions distantes.
Si vous rencontrez des problèmes de connexion sur un serveur de développement, en particulier avec phpMyAdmin, consultez [[https://www.citizenz.info/mariadb-mysql-connexion-root-avec-phpmyadmin-sous-ubuntu-16-04|ce tutoriel]] afin de rétablir le fonctionnement original de type MySQL.

Après cela le fonctionnement est semblable à [[:Mysql]].

=====Problèmes connus=====
====Connexion impossible====
Si vous n'arrivez à vous connecter à MariaDB, et rencontrez l'erreur suivante:
<code>ERROR 1698 (28000): Access denied for user 'root'@'localhost'</code>

Il vous faudra modifier les droits de l'utilisateur root. Entrez dans un [[:terminal]] les commandes suivantes:
<code bash>sudo mysql -u root
use mysql;
update user set plugin='' where User='root';
flush privileges;
exit;</code>
===== Liens =====

  * [[http://mariadb.org/|MariaDB.org]] [en]
  * [[https://downloads.mariadb.org/mariadb/repositories/|Setting up MariaDB Repositories]] [en]
  * [[http://ourdelta.org/ubuntu|OurDelta]] [en]
  * [[https://launchpad.net/maria|MariaDB sur launchpad]] [en]
  * La page [[:mysql_outils|Outils MySQL]] -> Divers outils pour administrer les bases de données MySQL qui seront compatibles avec MariaDB
  * La page des [[:SGBD]]

----
//Contributeurs : [[:utilisateurs:time132|time132]], [[:utilisateurs/bcag2]]//